package ncs.controlador.bean;

import java.io.Serializable;
import java.util.List;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import ncs.modelo.dao.PropietarioDao;
import ncs.modelo.dao.UbigeoDao;
import ncs.modelo.entidades.TPropiertario;
import ncs.modelo.entidades.TUbigeo;
import ncs.modelo.impl.PropietarioDaoImpl;
import ncs.modelo.impl.UbigeoDaoImpl;

/**
 *
 * @author Rick
 */
@ManagedBean(name = "adminPropBean")
@SessionScoped
public class AdministrarPropietarioBean implements Serializable {

    private List<TUbigeo> ubigeos;
    private TPropiertario propietario;
    private List<TPropiertario> propietarios;

    public AdministrarPropietarioBean() {
        propietario = new TPropiertario();
        propietario.setTUbigeo(new TUbigeo());
    }

    public void prepararPropietario(String id) {
        PropietarioDao propietarioDao = new PropietarioDaoImpl();
        propietario = propietarioDao.buscarPorId(id);
    }

    public void actualizarPropietario() {
        PropietarioDao propietarioDao = new PropietarioDaoImpl();
        propietarioDao.actualizar(propietario);
        propietario = new TPropiertario();
        propietario.setTUbigeo(new TUbigeo());
    }

    public void cambiarEstado(String id) {
        PropietarioDao propietarioDao = new PropietarioDaoImpl();
        propietario = propietarioDao.buscarPorId(id);
        if (propietario.isEstado()) {
            propietario.setEstado(false);
        } else {
            propietario.setEstado(true);
        }
        propietarioDao.actualizar(propietario);
    }

    public void prepararInsertar() {
        propietario = new TPropiertario();
        propietario.setTUbigeo(new TUbigeo());
    }

    public void insertar() {
        PropietarioDao propietarioDao = new PropietarioDaoImpl();
        propietarioDao.insertar(propietario);
        propietario = new TPropiertario();
        propietario.setTUbigeo(new TUbigeo());
    }

    public List<TUbigeo> getUbigeos() {
        UbigeoDao ubigeoDao = new UbigeoDaoImpl();
        ubigeos = ubigeoDao.buscarTodos();
        return ubigeos;
    }

    public void setUbigeos(List<TUbigeo> ubigeos) {
        this.ubigeos = ubigeos;
    }

    public TPropiertario getPropietario() {
        return propietario;
    }

    public void setPropietario(TPropiertario propietario) {
        this.propietario = propietario;
    }

    public List<TPropiertario> getPropietarios() {
        PropietarioDao propietarioDao = new PropietarioDaoImpl();
        propietarios = propietarioDao.buscarTodos();
        return propietarios;
    }

    public void setPropietarios(List<TPropiertario> propietarios) {
        this.propietarios = propietarios;
    }
}
